package com.gjy.kafka.resolve.example;

import com.gjy.kafka.resolve.consumer.ManualCommitConsumer;

/**
 * 只要 业务代码成功返回 再 commitSync，即使 consumer 进程异常崩溃，
 * 未提交的 offset 会保留，后续重新启动会 重新消费，从而实现 不重复消费（至少一次）+ 不丢失（因为 offset 只在业务成功后提交）。
 *
 * @author gjy
 * @version 1.0
 * @since 2025-10-13 15:20:25
 */
public class ManualCommitDemo {

    public static void main(String[] args) {
        try (ManualCommitConsumer consumer = new ManualCommitConsumer("order-consumer-group")) {
            consumer.consume("orders"); // 阻塞循环消费
        }
    }

}
